function IncInfoBooking()
{
	this.TAG = " < IncInfoBooking > ";
	thisIncInfoBooking = this;
	
	this.notificationList = null;
	
	this.pageControl = new PageControl();
	this.pageControl.setListCount(10);
	
	this.totalCount = 0;
}

IncInfoBooking.prototype = {
	getContent: function($templateId, $paramArr) 
	{
		var sb = new StringBuffer();
		if( $templateId == "BK001") {
			//{0} {1} {2} {3} 예약완료 되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("예약완료 되었습니다.");
		}
		else if( $templateId == "BK002") {
			//{0} {1} {2} {3} 예약취소 되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("예약취소 되었습니다.");
		}
		else if( $templateId == "BK003") {
			//{0} {1} {2} {3} 가예약 되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("가예약 되었습니다.");
		}
		else if( $templateId == "BK004") {
			//{0} {1} {2} {3} 가예약취소 되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("가예약취소 되었습니다.");
		}
		else if( $templateId == "BK005") {
			//{0} {1} {2} {3} 가예약 상태입니다. 확정예약을 진행하여 주세요. (취소{4}일전)
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("가예약 상태입니다. 확정예약을 진행하여 주세요. ");
			sb.append("(취소 " + $paramArr[4] + "일전");
		}
		else if( $templateId == "BK006") {
			//{0} {1} {2} {3}대 웨이팅 신청 되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("대 웨이팅 신청 되었습니다.");	
		}
		else if( $templateId == "BK007") {
			//{0} {1} {2} {3}대  웨이팅 예약 취소 되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("대  웨이팅 예약 취소 되었습니다.");
		}
		else if( $templateId == "BK008") {
			//웨이팅 예약에 지금 예약 가능하신 부킹 타임이 있습니다. 2시간 내에 예약자가 없는경우 실시간으로 전환되며, 해당 시간대 웨이팅은 자동 취소됩니다.[예약하기]
			sb.append("웨이팅 예약에 지금 예약 가능하신 부킹 타임이 있습니다. 2시간 내에 예약자가 없는경우 실시간으로 전환되며, 해당 시간대 웨이팅은 자동 취소됩니다.[예약하기]");
		}
		else if( $templateId == "BK009") {
			// 없음?
		}
		else if( $templateId == "BK010") {
			//{0} {1} {2} {3} 예약완료 되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("예약완료 되었습니다.");
		}
		else if( $templateId == "BK011") {
			//{0} {1} {2} {3} 예약취소 되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("예약취소 되었습니다.");
		}
		else if( $templateId == "BK012") {
			//{0} {1} {2} {3} 자선예약에 응모하셨습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("자선예약에 응모하셨습니다.");
		}
		else if( $templateId == "BK013") {
			//{0} {1} {2} {3} 자선예약에 당첨되었습니다.
			sb.append($paramArr[0] + " ");
			sb.append($paramArr[1] + " ");
			sb.append($paramArr[2] + " ");
			sb.append($paramArr[3] + " ");
			sb.append("자선예약에 당첨되었습니다.");
		}

		return sb.toString();
	},
	getListRow: function($data, $paramArr, $position) 
	{
		var templateId = $data.templateId;
		var sb = new StringBuffer();
		
		var contentHtml = this.getContent(templateId, $paramArr);
		
		sb.append("<li id=" + $position + " name="+ templateId +">");
		sb.append("<a href='#' class='info_bo'>");
		sb.append(contentHtml);
		sb.append("<time>"+$data.timelag+"</time>");
		sb.append("</a>");
		sb.append("</li>");
		
		
/*		sb.append("<li id="+i+">");
		sb.append("<a href=# class=info_bo>");
		sb.append("<span class=state>부킹</span>");
		sb.append(data.contents);
		sb.append("<time>"+data.timelag+"</time>");
		sb.append("</a>");
		sb.append("</li>");*/
		
		return sb.toString();
	},
	getParamObject: function($param) 
	{
		var tempStr = $param;
		var tempArr = tempStr.split("$#@!");
		var tempObj = new Object();
		var paramArr = new Array();
		
		for(var i=0; i<tempArr.length; i++) {
			var arr = tempArr[i].split("!@#$");
			tempObj[arr[0]] = arr[1];
			paramArr.push(arr[1]);
		}

		/*		
				console.log(JSON.stringify(jsonData));
				
				var tempStr = jsonData.msp.contents.items[0].param;
				var tempArr = tempStr.split('$#@!');
				var tempObj = new Object();
				var i = 0;
				console.log(tempArr);
				while(i < tempArr.length) {
				    var arr = tempArr[i].split('!@#$');
				    tempObj[arr[0]] = arr[1];
				    
				    i++;
				}
				console.log(tempObj);
				
				ttt.html("<em>" + tempObj["참여일자"] + tempObj["골프장명"] + "</em>"+ tempObj["코스홀정보"] + tempObj["닉네임"] + "님의 조인룸 초대가 있습니다.");
		*/
		
		//return tempObj;
		return paramArr;
	},
	getNotificationList:function(){
		console.log(this.TAG + "getNotificationList()");
		var mj = new MJson();
		var cm = new ConnectionManager(); 

		mj.putClient(MJson.CLIENT.USERID, document.globalObj.LOGIN_DATA.userId);
		//mj.putClient(MJson.CLIENT.USERID, "kimkm");
		mj.putPub(MJson.PUB.SID, "NC001");
		mj.putPub(MJson.PUB.SERVICENAME, "getNotificationListMobile");
		mj.putPub(MJson.PUB.LISTCOUNT, this.pageControl.listCount);
		mj.putPub(MJson.PUB.CURRPAGENO, this.pageControl.currentPage);
		
		mj.putParameter(MJson.PARAMETER.NOTIFICATIONTYPE, "B");
		//mj.putParameter(MJson.PARAMETER.PERIOD, null); // 조회기간 오늘:0, 일주일:7, 2주:15, 한달:30
		mj.putParameter(MJson.PARAMETER.TOPFLAG, "N");   //Y:상단알림 또는 N:알림페이지????
		//mj.putParameter(MJson.PARAMETER.SERVICEGRP, null); // 서비스 구분값 null --> 전체
		
		//console.log("request : " + mj.getJsonString());
		cm.requestGet(mj.getJsonString(), function(jsonData) {
			//console.log("성공 :: 통신");
			//console.log(JSON.stringify(jsonData));
			
			if (mj.checkServiceResult(jsonData)) {
				if(jsonData.msp.contents)
				{
					if( jsonData.msp.contents.items ) 
					{
						if(jsonData.msp.contents.items.length) {
							for(var i=0; i<jsonData.msp.contents.items.length;i++) 
							{
								thisIncInfoBooking.notificationList.push(jsonData.msp.contents.items[i]);
							}
						}
						else 
						{
							thisIncInfoBooking.notificationList.push(jsonData.msp.contents.items);
						}
						
						thisIncInfoBooking.viewList(jsonData.msp.contents["@totalcount"]);
					}
				}
			}
		});
	},
	onPageShow:function()
	{
		console.log("onPageShow :: info_booking");
		
		this.notificationList = new Array();

		this.getNotificationList();
		
		var $headerMenu=$('#info_header_menu');
		var $goInform = $headerMenu.find('a:eq(1)');
		var $goLetter = $headerMenu.find('a:eq(2)');
		
		var listview = $("section#inc_info_booking>section>div>ul");
		listview.empty();
		
		$($goInform).bind('click', function(event) {
		  console.log('click :: go inform.html');
		  $.mobile.changePage("inform.html");
		});
		$($goLetter).bind('click', function(event) {
		  console.log('click :: go letter.html');
		  $.mobile.changePage("letter.html");
		});
		
		var addBtn = $("section#inc_info_booking>section").find("button");
		addBtn.hide();
		
		$(".count_01").html(document.globalObj.NOTIFICATION_COUNT_DATA.booking);
		$(".count_02").html(document.globalObj.NOTIFICATION_COUNT_DATA.notification);
		$(".count_03").html(document.globalObj.NOTIFICATION_COUNT_DATA.letter);
		
	},
	viewList: function($totalCount) {
		console.log(this.TAG + "viewList()");

		var listview = $("section#inc_info_booking>section>div>ul");
		var itemview = this.cloneListItem;
		listview.empty();
		var list = this.notificationList;

		var notReadCount = 0;
		for(var i=0; i<list.length; i++) 
		{
			var sb = new StringBuffer();
			
			var data = list[i];
			
			var paramArr = this.getParamObject(data.param);
			
			var listRow = this.getListRow(data, paramArr);
			
			listview.append(listRow);

			
			//listview.append(sb.toString());
			
			if( data.readYn == "N" ) notReadCount ++;
		}
		
		$(".count_01").html(document.globalObj.NOTIFICATION_COUNT_DATA.booking = notReadCount);
		$(".count_02").html(document.globalObj.NOTIFICATION_COUNT_DATA.notification);
		$(".count_03").html(document.globalObj.NOTIFICATION_COUNT_DATA.letter);
		
		listview.listview("refresh");
		
		listview.find("li").unbind("click");
		listview.find("li").bind("click",function($event){
			var id = $(this).attr("id");
			$.mobile.changePage("../mypage/booking_info.html");
		});
		
		var addBtn = $("section#inc_info_booking>section").find("button");
		addBtn.show();

		if(listview.find("li").length >= $totalCount) {
			addBtn.hide();
		}
		
		addBtn.on("click", function($event){
			thisIncInfoBooking.pageControl.addView();
			thisIncInfoBooking.getNotificationList();
		});
		
		// 리스트뷰 아이템 클릭!
		listview.find("li").unbind("click");
		listview.find("li").bind("click",function($event){
			console.log("아이템 클릭!!!");
			
			var templateKey = $(this).attr("name");
			var id = $(this).attr("id");
			
			var data = list[id];
			
			var paramArr = thisIncInform.getParamObject(data.param);
			
			if(templateKey == "BK001") {
				// 없음
			}
			else if(templateKey == "BK002") {
				// 없음
			}
			else if(templateKey == "BK003") {
				// 없음
			}
			else if(templateKey == "BK004") {
				// 없음
			}
			else if(templateKey == "BK005") {
				// 가예약된 부킹상세
			
				document.globalObj.BOOKING_DATA.bookingview.reserv_id = paramArr[5];
				document.globalObj.BOOKING_DATA.reservation = "1";
				document.globalObj.BOOKING_DATA.area = paramArr[6]; // 지역값 받기
				
				$.mobile.changePage("../booking/booking_view.html");
				
			/*
            bookingview : {// 부킹 상세 보기 데이터
                // 예약 번호
                reserv_id : null,
                // 예약 종류
                reservation : null,
                // 지역
                area : null
            },
			 */
			}
			else if(templateKey == "BK006") {
				// 없음
			}
			else if(templateKey == "BK007") {
				// 없음
			}
			else if(templateKey == "BK008") {
				//마이 골프인 > 부킹정보로 이동
				//mypage/booking_info.html
				//paramArr[5]
				document.globalObj.MYPAGE_DATA["예약키"] = paramArr[0];
				$.mobile.changePage("../mypage/booking_info.html");
			}
			else if(templateKey == "BK009") {
				// 없음
			}
			else if(templateKey == "BK010") {
				// 없음
			}
			else if(templateKey == "BK011") {
				// 없음
			}
			else if(templateKey == "BK012") {
				// 없음
			}
			else if(templateKey == "BK013") {
				// 없음
			}
		});
		
		/*
                <li><a href="../mypage/booking_info.html"   class="info_bo"><!-- 부킹 일때 css 부분-->
                    <span class="state">부킹</span><!-- 부킹 일때 css -->
                    2012. 05. 16(수) 스카이72 하늘코스 18H 14:00  부킹예약 취소
                    <time>3분전</time>
                </a></li>
                
                <li class="visit"><a href="../mypage/booking_info.html"   class="info_bo"><!-- 방문 기록 있을때 css 부분-->
                    <span class="state">부킹</span> 
                    <em>[요청예약 확정]</em>2012. 05. 16(수)  오션코스 7시 예약이 확정되었습니다.
                    <time>50분전</time>
                </a></li>
                
                <!-- 조인룸 view-->
                <li><a href="../room/join_room_view.html"   class="jo_bo"> 
                    <span class="state">조인</span> 
                    <em>잭니클라우스</em>님의 조인룸 초대가 있습니다.(비밀번호 1234) 
                    <time>10일전</time>
                </a></li>
                
			 */
		/*
	        "notificationSeq": 945,
	        "targetUserId": "kimkm",
	        "templateId": "BK005",
	        "param": "예약일자!@#$2012.08.18(토)$#@!골프장명!@#$윤정골프장$#@!코스홀정보!@#$한선OUT코스 18H$#@!예약시간!@#$07:20$#@!예약잔여일!@#$1$#@!예약키!@#$4539",
	        "confirmYn": "N",
	        "regId": "kimkm",
	        "regDate": 20120813,
	        "regTime": "003034",
	        "modId": "kimkm",
	        "modDate": 20120813,
	        "modTime": "003034",
	        "notificationType": "B",
	        "serviceGrp": "BK",
	        "readYn": "N",
	        "contents": "2012.08.18(토) 윤정골프장 한선OUT코스 18H 07:20 가예약 상태입니다. 확정예약을 진행하여 주세요. (취소1일전)",
	        "timelag": "10시간 전"
		 */
			/*
				(BK:부킹,
				GL:골프인라운지,
				CL:동호회,
				JR:조인룸,
				CK:코스공략,
				PS:일반회원)
				null 일 경우 전체
			 */

	}
}


//안씀
function NotiDummy() {
	
	var jsonData = 
	{
			  "msp": {
			    "@version": "3.00",
			    "params": {
			      "pub": {
			        "sid": "NC001",
			        "servicename": "getNotificationList",
			        "listcount": 10,
			        "currpageno": 1
			      },
			      "parameter": [
			        {
			          "@name": "topFlag",
			          "$": "N"
			        },
			        {
			          "@name": "notificationType",
			          "$": "B"
			        },
			        {
			          "@name": "period",
			          "$": "0"
			        }
			      ]
			    },
			    "contents": {
			      "@class": "contents",
			      "@totalcount": "4",
			      "items": [
			        {
			          "notificationSeq": 340,
			          "targetUserId": "hyunjoo",
			          "templateId": "BK003",
			          "param": "{예약일자!@#$2012.08.05(일)$#@!골프장명!@#$대영힐스컨트리클럽$#@!코스홀정보!@#$청 18$#@!예약시간!@#$14:00}",
			          "confirmYn": "N",
			          "regId": "hyunjoo",
			          "regDate": 20120801,
			          "regTime": 170333,
			          "modId": "hyunjoo",
			          "modDate": 20120801,
			          "modTime": 170333,
			          "notificationType": "B",
			          "serviceGrp": "BK",
			          "readYn": "N",
			          "contents": "2012.08.14(화) 대영힐스컨트리클럽 청 18 14:00 가예약 되었습니다.",
			          "timelag": "7초 전"
			        },
			        {
				          "notificationSeq": 340,
				          "targetUserId": "hyunjoo",
				          "templateId": "BK003",
				          "param": "{예약일자!@#$2012.08.05(일)$#@!골프장명!@#$대영힐스컨트리클럽$#@!코스홀정보!@#$청 18$#@!예약시간!@#$14:00}",
				          "confirmYn": "N",
				          "regId": "hyunjoo",
				          "regDate": 20120801,
				          "regTime": 170333,
				          "modId": "hyunjoo",
				          "modDate": 20120801,
				          "modTime": 170333,
				          "notificationType": "B",
				          "serviceGrp": "BK",
				          "readYn": "N",
				          "contents": "2012.08.15(수) 대영힐스컨트리클럽 청 18 14:00 가예약 되었습니다.????",
				          "timelag": "6초 전"
				        },
				        {
					          "notificationSeq": 340,
					          "targetUserId": "hyunjoo",
					          "templateId": "BK003",
					          "param": "{예약일자!@#$2012.08.05(일)$#@!골프장명!@#$대영힐스컨트리클럽$#@!코스홀정보!@#$청 18$#@!예약시간!@#$14:00}",
					          "confirmYn": "N",
					          "regId": "hyunjoo",
					          "regDate": 20120801,
					          "regTime": 170333,
					          "modId": "hyunjoo",
					          "modDate": 20120801,
					          "modTime": 170333,
					          "notificationType": "B",
					          "serviceGrp": "JR",
					          "readYn": "N",
					          "contents": "2012.08.16(목) 대영힐스컨트리클럽 청 18 14:00 가예약 되었습니다.????",
					          "timelag": "5초 전"
					        },
					        {
						          "notificationSeq": 340,
						          "targetUserId": "hyunjoo",
						          "templateId": "BK003",
						          "param": "{예약일자!@#$2012.08.05(일)$#@!골프장명!@#$대영힐스컨트리클럽$#@!코스홀정보!@#$청 18$#@!예약시간!@#$14:00}",
						          "confirmYn": "N",
						          "regId": "hyunjoo",
						          "regDate": 20120801,
						          "regTime": 170333,
						          "modId": "hyunjoo",
						          "modDate": 20120801,
						          "modTime": 170333,
						          "notificationType": "B",
						          "serviceGrp": "BK",
						          "readYn": "N",
						          "contents": "2012.08.17(금) 대영힐스컨트리클럽 청 18 14:00 가예약 되었습니다.????",
						          "timelag": "4초 전"
						        },
						        {
							          "notificationSeq": 340,
							          "targetUserId": "hyunjoo",
							          "templateId": "BK003",
							          "param": "{예약일자!@#$2012.08.05(일)$#@!골프장명!@#$대영힐스컨트리클럽$#@!코스홀정보!@#$청 18$#@!예약시간!@#$14:00}",
							          "confirmYn": "N",
							          "regId": "hyunjoo",
							          "regDate": 20120801,
							          "regTime": 170333,
							          "modId": "hyunjoo",
							          "modDate": 20120801,
							          "modTime": 170333,
							          "notificationType": "B",
							          "serviceGrp": "JR",
							          "readYn": "N",
							          "contents": "2012.08.18(토) 대영힐스컨트리클럽 청 18 14:00 가예약 되었습니다.????",
							          "timelag": "3초 전"
							        }
			        
			      ],
			      "serviceResult": "00000"
			    },
			    "result": {
			      "code": "00000",
			      "msg": "성공"
			    }
			  }
			}
	
	return jsonData;
}












